package com.zhang.test;

import com.zhang.test.domain.vo.FileRetVO;
import com.zhang.bingmei_incomeexpenditure.entity.commom.R;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

import static com.zhang.comm.utils.FileValidationUtil.validateFileHeader;

/**
 * @author zsj
 * @description
 * @createDate 2025/11/14 10:15
 * @Entity com.zhang.test.entity.
 */
@Slf4j
public class FileUpDemo {

    public R<List<FileRetVO>> uploadPic(MultipartFile[] files) {
        if (files == null ||files.length>=9){
            return R.error("最多9张照片");
        }
        for (MultipartFile multipartFile : files){
            // 验证图片格式
//            String extName = FileUtil.extName(multipartFile.getOriginalFilename());
//            log.info("上传文件名={},文件后缀={}", multipartFile.getOriginalFilename(), extName);
//            if (!checkImageType(extName)) {
//                return R.error("上传文件类型不支持,请重新上传");
//            }
            // 添加二进制识别文件头验证，防止图片木马注入
            if (!validateFileHeader(multipartFile)) {
                return R.error("文件内容与类型不匹配，请上传正确的图片文件");
            }
        }

        return R.ok("上传成功");
    }
}
